#!/bin/bash

# 安装必要的依赖
echo "正在安装必要的软件..."
sudo apt update
sudo apt install -y python3 python3.12-venv python3-pip mysql-server redis-server  # 添加redis-server
# 安装Python库
echo "正在安装Python库..."
python3 -m venv /opt/myenv
source /opt/myenv/bin/activate
pip3 install setuptools flask mysql-connector-python flask-login flask-redis redis  redis-py-cluster flask_session# 添加新的Python库
#pip3 install flask flask-login mysql-connector-python redis-py-cluster
# 提示用户配置MySQL
echo "请按照以下步骤配置MySQL："
echo "1. 当出现提示时，设置MySQL的root密码"
echo "2. 之后会自动创建数据库和授权访问"
sudo mysql_secure_installation

# 启动Redis服务
sudo systemctl start redis-server
sudo systemctl enable redis-server

# 读取MySQL密码
read -p "请输入您设置的MySQL root密码: " mysql_password

# 使用MySQL命令创建数据库和授权
echo "正在配置数据库..."
sudo mysql -u root -p"$mysql_password" << EOF
CREATE DATABASE IF NOT EXISTS student_scores;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '$mysql_password';
FLUSH PRIVILEGES;
EOF

# 修改app.py中的数据库密码
echo "正在配置应用程序..."
sed -i "s/'password': 'your_password'/'password': '$mysql_password'/" app.py

# 创建templates目录并移动HTML文件
mkdir -p templates
mv index.html templates/
mv view.html templates/
mv login.html templates/  # 添加新页面
mv register.html templates/  # 添加新页面

# 启动应用程序
echo "一切准备就绪，正在启动应用程序..."
echo "您可以通过 http://服务器IP:5000 访问系统"
python3 app.py
